<?php
/**
 * Created by PhpStorm.
 * User: 张辉
 * Date: 2018/7/28
 * Time: 12:32
 */

namespace app\crontab\controller\sensors;
use app\common\redis\UserSensorsDataRedis;
use app\common\service\PidFile;
use app\common\service\SensorsData;
use app\crontab\controller\CrontabCommon;
/**
 * 神策用户数据上报
 */
class Userdata extends CrontabCommon
{
    /**
     * @var int 脚本处理多少次之后重启
     */
    private static $article_num = 100;

    /**
     * 上报数据
     */
    public function index()
    {
        if (!PidFile::createPidFile('UserSensorsData', 2)) {
            echo '进程已启动足够数量' . PHP_EOL;
            return;
        }

        $i = 0;
        $redisModel = new UserSensorsDataRedis();

        $sensorsData = new SensorsData();
        while ( $i < self::$article_num  ){
            $i ++;
            $info = $redisModel->ListRPop();
            if ( $info ){
                var_dump($info);
                $sensorsData->set( json_decode( $info,true ) );
            } else {
                sleep( 1 );
            }
        }
        return ;
    }

    public function up_user_coin_format()
    {
        $sensorsData = new SensorsData();
        $sensorsData->user_pair();
    }

    /**
     * 每天0点上报用户持仓、自选数据     推送统计数据
     */
    public function up_user_coin()
    {
        // 上报正式
        $sensorsData = new SensorsData();
        $sensorsData->user_coin();

        return true;
    }

    /**
     * 每天隔6小时上报一次文章PUSH数据
     */
    public function up_jpush_article_count()
    {
        // 上报正式
        $sensorsData = new SensorsData();
        $sensorsData->up_getui_count();
    }

}